#-*- codeing = utf-8 -*-
#@Time : 2020/10/29 13:05
#@Author : 阳某
#@File : 列表推导式.py
#@Software : PyCharm

datas = [
    {'name':'a','score':80},
    {'name':'b','score':90},
    {'name':'c','score':87},
]
names = []
for data in datas:
    names.append(data['name'])
print(names)

names = [data['name'] for data in datas]
print(names)

names = {}
for data in datas:
    names[data['name']] = data['score']
print(names)

names = {names[data['name']]:data['score'] for data in datas}
print(names)


def add(x,y):
    return x+y
print(add(3,5))

f = lambda x,y:x+y
print(f(2,4))

# filter() 函数用于过滤序列，过滤掉不符合条件的元素，返回一个迭代器对象，如果要转换为列表，可以使用 list() 来转换。
# 该接收两个参数，第一个为函数，第二个为序列，序列的每个元素作为参数传递给函数进行判，然后返回 True 或 False，最后将返回 True 的元素放到新列表中。
# filter(function, iterable)

l = [1,2,3,4,5]
print(filter(lambda x:x>3,l))
print(type(filter(lambda x:x>3,l)))
for x in filter(lambda x:x>3,l):
    print(x)



